/**
 * Matter Protocol Support for Homebridge
 *
 * This module provides Matter protocol support through a Plugin API,
 * allowing plugin developers to explicitly register Matter accessories.
 */

export { type MatterConfigValidationResult, MatterConfigValidator } from './matterConfigValidator.js'
export { MatterServer } from './matterServer.js'
export { HomebridgeMatterStorage, MatterStorageManager } from './matterStorage.js'
export {
  clusters,
  devices,
  deviceTypes,
  type InternalMatterAccessory,
  type MatterAccessory,
  type MatterClusterHandlers,
  type MatterCommandHandler,
  MatterCommissioningError,
  type MatterConfig,
  MatterDeviceError,
  MatterError,
  type MatterErrorDetails,
  MatterErrorType,
  MatterNetworkError,
  MatterStorageError,
} from './matterTypes.js'
